package Toepen.LoungeFacade;

import java.util.ArrayList;


// <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
// #[regen=yes,id=DCE.AAA35D19-B00C-52D4-0C3F-7F148CB2898F]
// </editor-fold>
/**
 * Bevat alle gegevens die benodigd zijn om een gebruiker in te laten loggen en
 * om hem en zijn statistieken weer te geven in de Lounge
 * @author LucasD
 */
public class Gebruiker {

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.1DF0ACAC-297B-FFAE-871D-B4A0A731F845]
    // </editor-fold>
    /**
     * Lijst met resultaten van deze speler. Kan leeg zijn.
     */
    private ArrayList<SpelResultaat> spelResultaten;

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.BDA7BDD5-086B-7B71-7B0F-90D30CBC0AE1]
    // </editor-fold>
    /**
     * Nickname of echte naam van de speler. Maximaal 20 tekens.
     */
    private String naam;

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.CF8D7764-CC5E-5028-D467-64883A709C2A]
    // </editor-fold>
    /**
     * De loginnaam die de gebruiker gebruikt om in te loggen. Tussen de zes en
     * twaalf tekens
     */
    private String loginNaam;

    private String ipAdres;

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.51C8D5BB-21B3-904C-F98E-37893DE97284]
    // </editor-fold>
    /**
     * Constructor voor deelnemer. Parameters zijn gelijk aan die voor een
     * gebruiker, de deelnemer krijgt zijn hand en strafpunten pas later in het
     * spel.
     * @param naam              De naam van de deelnemer
     * @param loginNaam         De login naam van de deelnemer
     * @param spelResultaten    De spelresultaten tot nu toe van de deelnemer
     */
    public Gebruiker (String naam, String loginNaam, String ipAdres, ArrayList<SpelResultaat> spelResultaten) {
        this.naam = naam;
        this.loginNaam = loginNaam;
        this.ipAdres = ipAdres;
        this.spelResultaten = spelResultaten;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,regenBody=yes,id=DCE.B003A3D5-E182-F8D2-C131-7F092670BC0B]
    // </editor-fold>
    /**
     * @return login naam van de Gebruiker
     */
    public String getLoginNaam() {
        return loginNaam;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,regenBody=yes,id=DCE.CC2C4FE6-3A52-4D79-F6A6-AA81E50043B6]
    // </editor-fold>
    /**
     * @return naam
     */
    public String getNaam() {
        return naam;
    }

    /**
     * @return IP-adres van deze gebruiker
     */
    public String getIpAdres() {
        return ipAdres;
    }

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,regenBody=yes,id=DCE.865B5F13-A1B9-1DEC-CDC2-1AF5830DC248]
    // </editor-fold>
    /**
     * @return ArrayList van alle spelresultaten
     */
    public ArrayList<SpelResultaat> getSpelResultaten() {
        return spelResultaten;
    }
}

